/***********************************************************************************************************************
 * ############################################# Application AdewebLite #############################################
 * AdewebLite Android est une application permettant de consulter des emplois du temps fournis par l'université UHP
 * avec ou sans connexion internet (informations gardées en mémoire à chaque synchronisation). Et utilisant la web
 * API ADE pour collecter les données.
 * @author Andrianjafintrimo Victor, Zanette Sébastien
 * 
 * Basée sur l'application du même nom, utilisant le flux RSS (données à traiter), de :
 * @author Schnell Michaël, Zanette Sébastien
 * **********************************************************************************************************************
 */

package ade.prime.activity.parameters;

import ade.prime.activity.CreateSchedule;
import ade.prime.activity.R;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.TextView;

/**
 * Permet l'ajout de plusieurs champs 'ressource' dans le formulaire de création/modification d'un emploi du temps.
 * @see ScheduleResource
 * @author Seb
 */
public class ScheduleRessourceTitle extends ParameterType {

	public static final String FIELD_ID = "ressources_title" ;

	private LayoutInflater inflater;
	protected CreateSchedule cs ;

	/**
	 * Constructeur.
	 * @param inflater
	 * @param cs  
	 */
	public ScheduleRessourceTitle(LayoutInflater inflater, CreateSchedule cs) {
		super(FIELD_ID);
		this.inflater = inflater;
		this.cs = cs ;
	}

	/**
	 * Renvoie null car inutile ici.
	 * @param view
	 * @return 
	 */
	@Override
	public Object getValue(View view) {
		return null ;
	}

	/**
	 * Retourne la vue pour ajouter un numéro étudiant/ressource (Texte + bouton).
	 * @param convertView vue du champ dans le formulaire de création/modification
	 * @param parent Vue parente
	 * @return vue du champ 'Nom'
	 */
	@Override
	public View getView(View convertView, ViewGroup parent) {
		View v = this.inflater.inflate(R.layout.type_schedule_reference_title, null) ;
		TextView text = (TextView) v.findViewById(R.id.add_ressource) ;
		text.setOnClickListener(new AddRessourceListener(this.cs)) ;
		return v ;
	} 

	class AddRessourceListener implements OnClickListener {	

		protected CreateSchedule cs ;

		/**
		 * @param cs
		 */
		public AddRessourceListener(CreateSchedule cs) {
			super();
			this.cs = cs;
		}


		@Override
		public void onClick(View v) {
			this.cs.addResource() ;
		}
	}

}
